Skip to content

OCPEDGE-2495: feat: update pacemaker in preparation for DualReplica promotion#1587

Open
eggfoobar wants to merge 3 commits intoopenshift:mainfrom
eggfoobar:upkeep-pacemaker-crd-featuregate
Open

OCPEDGE-2495: feat: update pacemaker in preparation for DualReplica promotion#1587
eggfoobar wants to merge 3 commits intoopenshift:mainfrom
eggfoobar:upkeep-pacemaker-crd-featuregate

Conversation

@eggfoobar
Copy link
Copy Markdown
Contributor

@eggfoobar eggfoobar commented Apr 1, 2026

Update pacemaker to reflect DualReplica featureGate promotion to GA.

Pacemaker depends on DualReplica as a featureGate, when DualReplica is promoted to Default, this resource will move to v1 as well so we need to update our pacemaker usage to use v1.

@coderabbitai
Copy link
Copy Markdown

coderabbitai bot commented Apr 1, 2026

Important

Review skipped

Auto reviews are limited based on label configuration.

🚫 Review skipped — only excluded labels are configured. (1)
  • do-not-merge/work-in-progress

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: aeb60de4-450a-4b5c-9ff3-0dcbc5b0fd77

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review

Walkthrough

Removed a CRD annotation and permitted empty fencingAgents arrays by changing minItems: 10 in bindata/etcd/pacemakercluster-crd.yaml. Added Makefile targets to sync/verify that bindata file from vendor. Migrated Pacemaker API usage across code and tests from github.com/openshift/api/etcd/v1alpha1gitlite.zycloud.tk/openshift/api/etcd/v1 and bumped the github.com/openshift/api go.mod version. Added a blank import to load generated CRDs.

Changes

Cohort / File(s) Summary
PacemakerCluster CRD
bindata/etcd/pacemakercluster-crd.yaml
Removed metadata.annotations["release.openshift.io/feature-set"]; updated spec.versions[0].name v1alpha1v1; changed OpenAPI text to v1 wording; relaxed status.nodes[].fencingAgents.minItems from 10.
Makefile bindata targets
Makefile
Added PACEMAKER_CRD_SOURCE/PACEMAKER_CRD_TARGET vars; update-bindata rule to copy vendored CRD into bindata; added .PHONY verify-bindata and verify-pacemaker-crd using diff -Naup.
Go module / CRD registration
go.mod, pkg/operator/api.go
Bumped github.com/openshift/api version in go.mod; added blank import github.com/openshift/api/etcd/v1/zz_generated.crd-manifests in pkg/operator/api.go to load pacemaker CRD manifests.
Pacemaker API migration — runtime code
pkg/tnf/pkg/pacemaker/...
pkg/tnf/pkg/pacemaker/client_helpers.go, statuscollector.go, healthcheck.go, ...
Replaced imports and all usages from .../etcd/v1alpha1.../etcd/v1 (aliased pacmkrv1): scheme registration (AddToScheme), REST client GroupVersion, CR types (PacemakerCluster, PacemakerClusterStatus, node/resource structs), condition/type/reason constants, fencing method enums, and related function signatures/struct field types. Updated log messages to use pacmkrv1.SchemeGroupVersion.String().
Pacemaker API migration — tests & fixtures
pkg/tnf/pkg/pacemaker/*_test.go, test_fixtures_test.go
Updated tests and fixtures to use pacmkrv1 types: function signatures, fake informer helpers, struct literals, constants/enums (condition types/reasons, resource names, fencing methods), and assertions; no test logic intent changed aside from type/constant substitutions.

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~45 minutes

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Comment @coderabbitai help to get the list of available commands and usage tips.

@openshift-ci openshift-ci bot requested review from dusk125 and tjungblu April 1, 2026 03:59
@eggfoobar
Copy link
Copy Markdown
Contributor Author

/hold for openshift/api#2490

@openshift-ci openshift-ci bot added the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Apr 1, 2026
@tjungblu
Copy link
Copy Markdown
Contributor

tjungblu commented Apr 1, 2026

/lgtm

@openshift-ci openshift-ci bot added the lgtm Indicates that a PR is ready to be merged. label Apr 1, 2026
@openshift-ci
Copy link
Copy Markdown
Contributor

openshift-ci bot commented Apr 1, 2026

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: eggfoobar, tjungblu

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@openshift-ci openshift-ci bot added approved Indicates a PR has been approved by an approver from all required OWNERS files. and removed lgtm Indicates that a PR is ready to be merged. labels Apr 1, 2026
@openshift-ci
Copy link
Copy Markdown
Contributor

openshift-ci bot commented Apr 6, 2026

New changes are detected. LGTM label has been removed.

@eggfoobar eggfoobar force-pushed the upkeep-pacemaker-crd-featuregate branch from 81f5064 to 985a7a0 Compare April 6, 2026 19:07
Copy link
Copy Markdown

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🧹 Nitpick comments (1)
Makefile (1)

53-54: Add .PHONY declaration for verify-pacemaker-crd.

The verify-pacemaker-crd target has no file output and should be declared as phony to ensure it always runs when invoked.

♻️ Proposed fix
 verify-pacemaker-crd:
 	diff -Naup $(RBR_CRD_SOURCE) $(RBR_CRD_TARGET)
+.PHONY: verify-pacemaker-crd
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@Makefile` around lines 53 - 54, The Makefile target verify-pacemaker-crd is
phony but not declared as such; add it to the .PHONY declaration so make always
runs the recipe instead of treating it as a file. Update the Makefile’s .PHONY
line (or add one if missing) to include verify-pacemaker-crd, ensuring the phony
list contains that exact target name.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@bindata/etcd/pacemakercluster-crd.yaml`:
- Line 19: The CRD change from v1alpha1 to v1 breaks Go type references; update
the vendor to include openshift/api v1 (follow openshift/api#2490) and migrate
all usages of v1alpha1 types to the new v1 equivalents, especially in the
pacemaker health check and status collector modules and any imports under
vendor/github.com/openshift/api/etcd; ensure package import paths and type names
are adjusted consistently and rebuild tests to verify no remaining v1alpha1
references before merging.

---

Nitpick comments:
In `@Makefile`:
- Around line 53-54: The Makefile target verify-pacemaker-crd is phony but not
declared as such; add it to the .PHONY declaration so make always runs the
recipe instead of treating it as a file. Update the Makefile’s .PHONY line (or
add one if missing) to include verify-pacemaker-crd, ensuring the phony list
contains that exact target name.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: a16da284-2a70-4360-94a0-cd857499c274

📥 Commits

Reviewing files that changed from the base of the PR and between bb1fda3 and 81f5064.

📒 Files selected for processing (2)
  • Makefile
  • bindata/etcd/pacemakercluster-crd.yaml

Copy link
Copy Markdown

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@Makefile`:
- Around line 53-54: The verify-pacemaker-crd Makefile target uses undefined
variables RBR_CRD_SOURCE and RBR_CRD_TARGET; update the target to use the
defined PACEMAKER_CRD_SOURCE and PACEMAKER_CRD_TARGET variables instead so the
diff command runs against the correct paths. Edit the verify-pacemaker-crd
target (reference: target name "verify-pacemaker-crd" and variables
"RBR_CRD_SOURCE"/"RBR_CRD_TARGET") to replace those undefined variables with
"PACEMAKER_CRD_SOURCE" and "PACEMAKER_CRD_TARGET".
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: ca059805-fdd7-4cae-b74b-9c7083cedd1a

📥 Commits

Reviewing files that changed from the base of the PR and between 81f5064 and 985a7a0.

📒 Files selected for processing (2)
  • Makefile
  • bindata/etcd/pacemakercluster-crd.yaml
🚧 Files skipped from review as they are similar to previous changes (1)
  • bindata/etcd/pacemakercluster-crd.yaml

@eggfoobar eggfoobar force-pushed the upkeep-pacemaker-crd-featuregate branch 2 times, most recently from 6aaf840 to 269b009 Compare April 6, 2026 20:00
Copy link
Copy Markdown

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@pkg/tnf/pkg/pacemaker/statuscollector.go`:
- Line 58: The status currently coerces unknown fencing types (like "aws") into
the v1 FencingMethod enum (Redfish) causing misrepresentation; change the Method
field (currently declared as pacmkrv1.FencingMethod) to a plain string to
preserve the original agent method, and update parsing logic so
methodStringToEnum() no longer defaults unknown methods to FencingMethodRedfish
— instead return an explicit "unknown" marker or the raw string and only map
known values (IPMI/Redfish) to the enum; update callers such as
ResourceAgentFenceAWS and any code that relied on the enum (e.g., the code path
at methodStringToEnum and the coercion at the parse site) to use the raw method
string for status output while only using the enum for downstream logic that
strictly requires it.
- Line 239: The hard-coded placeholderAddresses value uses "0.0.0.0" which fails
the CRD validation; instead, when no valid global-unicast address is available,
set placeholderAddresses to an empty slice (or omit the Addresses field) rather
than inserting "0.0.0.0", or attempt to derive a valid address from existing
node data first; update the code that constructs placeholderAddresses (the
PacemakerNodeAddress slice and any usage in the status update path that
references PacemakerNodeInternalIP) to return an empty
[]pacmkrv1.PacemakerNodeAddress{} if no valid canonical global-unicast IP can be
found.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 14f3ca49-25ea-4642-97a9-90a1c9140f38

📥 Commits

Reviewing files that changed from the base of the PR and between c5a4f7d and 6aaf840.

⛔ Files ignored due to path filters (73)
  • go.sum is excluded by !**/*.sum
  • vendor/github.com/openshift/api/.coderabbit.yaml is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/.golangci.yaml is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/AGENTS.md is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/Makefile is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/apiextensions/v1alpha1/types_compatibilityrequirement.go is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/config/v1/types.go is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/config/v1/types_apiserver.go is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/config/v1/types_authentication.go is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/config/v1/types_cluster_version.go is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/config/v1/types_dns.go is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/config/v1/types_infrastructure.go is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/config/v1/zz_generated.deepcopy.go is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/config/v1/zz_generated.featuregated-crd-manifests.yaml is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/config/v1/zz_generated.swagger_doc_generated.go is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/config/v1alpha1/register.go is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/config/v1alpha1/types_cluster_image_policy.go is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/config/v1alpha1/types_cluster_monitoring.go is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/config/v1alpha1/types_image_policy.go is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/config/v1alpha1/types_pki.go is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/config/v1alpha1/zz_generated.crd-manifests/0000_10_config-operator_01_clusterimagepolicies.crd.yaml is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/config/v1alpha1/zz_generated.crd-manifests/0000_10_config-operator_01_clustermonitorings.crd.yaml is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/config/v1alpha1/zz_generated.crd-manifests/0000_10_config-operator_01_imagepolicies.crd.yaml is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/config/v1alpha1/zz_generated.crd-manifests/0000_10_config-operator_01_pkis.crd.yaml is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/config/v1alpha1/zz_generated.deepcopy.go is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/config/v1alpha1/zz_generated.featuregated-crd-manifests.yaml is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/config/v1alpha1/zz_generated.swagger_doc_generated.go is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/envtest-releases.yaml is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/etcd/install.go is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/etcd/v1/Makefile is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/etcd/v1/doc.go is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/etcd/v1/register.go is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/etcd/v1/types_pacemakercluster.go is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/etcd/v1/zz_generated.crd-manifests/0000_25_etcd_01_pacemakerclusters.crd.yaml is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/etcd/v1/zz_generated.crd-manifests/doc.go is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/etcd/v1/zz_generated.deepcopy.go is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/etcd/v1/zz_generated.featuregated-crd-manifests.yaml is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/etcd/v1/zz_generated.swagger_doc_generated.go is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/etcd/v1alpha1/types_pacemakercluster.go is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/etcd/v1alpha1/zz_generated.swagger_doc_generated.go is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/features.md is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/features/features.go is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/features/legacyfeaturegates.go is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/operator/v1/types_csi_cluster_driver.go is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/operator/v1/types_ingress.go is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/operator/v1/types_machineconfiguration.go is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/operator/v1/types_network.go is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/operator/v1/zz_generated.crd-manifests/0000_20_kube-apiserver_01_kubeapiservers-Default.crd.yaml is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/operator/v1/zz_generated.crd-manifests/0000_20_kube-apiserver_01_kubeapiservers-DevPreviewNoUpgrade.crd.yaml is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/operator/v1/zz_generated.crd-manifests/0000_20_kube-apiserver_01_kubeapiservers-OKD.crd.yaml is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/operator/v1/zz_generated.crd-manifests/0000_20_kube-apiserver_01_kubeapiservers-TechPreviewNoUpgrade.crd.yaml is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/operator/v1/zz_generated.crd-manifests/0000_20_kube-apiserver_01_kubeapiservers.crd.yaml is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/operator/v1/zz_generated.crd-manifests/0000_50_csi-driver_01_clustercsidrivers-CustomNoUpgrade.crd.yaml is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/operator/v1/zz_generated.crd-manifests/0000_50_csi-driver_01_clustercsidrivers-Default.crd.yaml is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/operator/v1/zz_generated.crd-manifests/0000_50_csi-driver_01_clustercsidrivers-DevPreviewNoUpgrade.crd.yaml is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/operator/v1/zz_generated.crd-manifests/0000_50_csi-driver_01_clustercsidrivers-OKD.crd.yaml is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/operator/v1/zz_generated.crd-manifests/0000_50_csi-driver_01_clustercsidrivers-TechPreviewNoUpgrade.crd.yaml is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/operator/v1/zz_generated.crd-manifests/0000_50_ingress_00_ingresscontrollers-CustomNoUpgrade.crd.yaml is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/operator/v1/zz_generated.crd-manifests/0000_50_ingress_00_ingresscontrollers-Default.crd.yaml is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/operator/v1/zz_generated.crd-manifests/0000_50_ingress_00_ingresscontrollers-DevPreviewNoUpgrade.crd.yaml is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/operator/v1/zz_generated.crd-manifests/0000_50_ingress_00_ingresscontrollers-OKD.crd.yaml is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/operator/v1/zz_generated.crd-manifests/0000_50_ingress_00_ingresscontrollers-TechPreviewNoUpgrade.crd.yaml is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/operator/v1/zz_generated.crd-manifests/0000_70_network_01_networks-CustomNoUpgrade.crd.yaml is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/operator/v1/zz_generated.crd-manifests/0000_70_network_01_networks-Default.crd.yaml is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/operator/v1/zz_generated.crd-manifests/0000_70_network_01_networks-DevPreviewNoUpgrade.crd.yaml is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/operator/v1/zz_generated.crd-manifests/0000_70_network_01_networks-OKD.crd.yaml is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/operator/v1/zz_generated.crd-manifests/0000_70_network_01_networks-TechPreviewNoUpgrade.crd.yaml is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/operator/v1/zz_generated.crd-manifests/0000_80_machine-config_01_machineconfigurations-Default.crd.yaml is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/operator/v1/zz_generated.crd-manifests/0000_80_machine-config_01_machineconfigurations-OKD.crd.yaml is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/operator/v1/zz_generated.deepcopy.go is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/operator/v1/zz_generated.featuregated-crd-manifests.yaml is excluded by !vendor/**, !**/vendor/**
  • vendor/github.com/openshift/api/operator/v1/zz_generated.swagger_doc_generated.go is excluded by !vendor/**, !**/vendor/**
  • vendor/modules.txt is excluded by !vendor/**, !**/vendor/**
📒 Files selected for processing (10)
  • bindata/etcd/pacemakercluster-crd.yaml
  • go.mod
  • pkg/operator/api.go
  • pkg/tnf/pkg/pacemaker/client_helpers.go
  • pkg/tnf/pkg/pacemaker/conditions.go
  • pkg/tnf/pkg/pacemaker/healthcheck.go
  • pkg/tnf/pkg/pacemaker/healthcheck_test.go
  • pkg/tnf/pkg/pacemaker/statuscollector.go
  • pkg/tnf/pkg/pacemaker/statuscollector_test.go
  • pkg/tnf/pkg/pacemaker/test_fixtures_test.go
✅ Files skipped from review due to trivial changes (2)
  • pkg/operator/api.go
  • go.mod
🚧 Files skipped from review as they are similar to previous changes (1)
  • bindata/etcd/pacemakercluster-crd.yaml

@eggfoobar
Copy link
Copy Markdown
Contributor Author

/retest

@eggfoobar eggfoobar force-pushed the upkeep-pacemaker-crd-featuregate branch from 269b009 to c833487 Compare April 6, 2026 20:24
@eggfoobar
Copy link
Copy Markdown
Contributor Author

/retest-required

bumping ocp api to pull in latest changes for pacemaker crd
bumping ocp client-go to account for changes in ocp api

Signed-off-by: ehila <ehila@redhat.com>
added helper tasks to help update and validate bind data crds from ocp/api, this makes it easy to keep changes in ocp/api synced with the repo and validate in CI

Signed-off-by: ehila <ehila@redhat.com>
Signed-off-by: ehila <ehila@redhat.com>
@eggfoobar eggfoobar force-pushed the upkeep-pacemaker-crd-featuregate branch from c833487 to a5ea942 Compare April 7, 2026 03:36
@eggfoobar eggfoobar changed the title upkeep: update featureset to match DualReplica promotion feat: update pacemaker in preparation for DualReplica promotion Apr 7, 2026
@eggfoobar eggfoobar changed the title feat: update pacemaker in preparation for DualReplica promotion OCPEDGE-2495: feat: update pacemaker in preparation for DualReplica promotion Apr 7, 2026
@openshift-ci-robot openshift-ci-robot added the jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. label Apr 7, 2026
@openshift-ci-robot
Copy link
Copy Markdown

openshift-ci-robot commented Apr 7, 2026

@eggfoobar: This pull request references OCPEDGE-2495 which is a valid jira issue.

Details

In response to this:

Update pacemaker to reflect DualReplica featureGate promotion to GA.

Pacemaker depends on DualReplica as a featureGate, when DualReplica is promoted to Default, this resource will move to v1 as well so we need to update our pacemaker usage to use v1.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

@openshift-ci
Copy link
Copy Markdown
Contributor

openshift-ci bot commented Apr 7, 2026

@eggfoobar: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
ci/prow/e2e-aws-ovn-serial-2of2 a5ea942 link true /test e2e-aws-ovn-serial-2of2
ci/prow/e2e-agnostic-ovn a5ea942 link true /test e2e-agnostic-ovn
ci/prow/e2e-gcp-operator-disruptive a5ea942 link true /test e2e-gcp-operator-disruptive

Full PR test history. Your PR dashboard.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. jira/valid-reference Indicates that this PR references a valid Jira ticket of any type.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants